package worker.model.service;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;

import worker.model.dao.HistoryDao;
import worker.model.vo.HistoryVO;
import worker.model.vo.ListVO;
import worker.model.vo.PagingBean;

public class HistoryService {
	private HistoryDao historyDao;

	public void setHistoryDao(HistoryDao historyDao) {
		this.historyDao = historyDao;
	}
	
	//메인콘트롤러의 서비스부분(페이징을 위해 ListVO에 담아준다)
	public ListVO totalInfo(int pageNo) throws SQLException {
		int total=historyDao.getAllListCount();
		PagingBean paging=new PagingBean(total,pageNo);
		ListVO lvo=new ListVO(historyDao.getContentList(pageNo),paging);
		System.out.println("메인콘트롤러의 서비스부분: "+lvo);
		return lvo;
	}
	
	//시리얼번호로 검색시 서비스부분(페이징을 위해 ListVO에 담아준다)
	public ListVO getSerialList(HashMap map) throws SQLException {
		int total=historyDao.getAllSerialCount(map);
		int pageNo=(Integer)map.get("pageNo");
		PagingBean paging=new PagingBean(total,pageNo);
		ListVO lvo=new ListVO(historyDao.getSerialList(map),paging);
		System.out.println("시리얼로 검색시 서비스부분: "+lvo);
		return lvo;
	}
	
	//워크오더로 검색시 서비스부분(페이징을 위해 ListVO에 담아준다)
	public ListVO searchWorkOderList(HashMap map2) throws SQLException {
		int total=historyDao.getAllWorkOrderCount(map2);
		int pageNo=(Integer) map2.get("pageNo");
		PagingBean paging=new PagingBean(total,pageNo);
		ListVO lvo=new ListVO(historyDao.getWorkOrderList(map2),paging);
		System.out.println("워크오더로 검색시 서비스부분: "+lvo);
		return lvo;
	}
	
	//디펙트로 검색시 서비스부분(페이징을 위해 ListVO에 담아준다)
	public ListVO searchDefectList(HashMap map2) throws SQLException {
		String defect_id=(String) map2.get("defect_id");
		int total=historyDao.getAllDefectCount(defect_id);
		int pageNo=(Integer) map2.get("pageNo");
		PagingBean paging=new PagingBean(total,pageNo);
		ListVO lvo=new ListVO(historyDao.getDefectList(map2),paging);
		System.out.println("디펙트로 검색시 서비스부분: "+lvo);
		return lvo;
	}
}
